package com.nb.service;

import com.mybatisflex.core.paginate.Page;
import com.mybatisflex.core.service.IService;
import com.nb.dto.ConfigQueryDTO;
import com.nb.entity.SysConfig;
import com.nb.entity.SysConfigHistory;

import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;

public interface ISysConfigService extends IService<SysConfig> {
    // 获取所有系统配置
    List<SysConfig> getAllConfigs();

    // 修改系统配置
    boolean updateConfig(SysConfig config);

    // 刷新配置缓存
    void refreshCache();

    // 获取公共配置
    List<SysConfig> getPublicConfigs();

    // 获取配置历史记录
    List<SysConfigHistory> getHistoryByPage(
            Integer configId,
            LocalDateTime startTime,
            LocalDateTime endTime);
}
